/*
 * URLQueue.cpp
 *
 *  Created on: Mar 8, 2011
 *      Author: cnwilson
 */

#include "../inc/URLQueue.h"


            URLQueue::URLQueue(){

            }

            URLQueue::~URLQueue(){

            }

            bool URLQueue::contains(URL &addr){
            	if (queue.Find(addr,NULL)==NULL)
            		return false;
            	return true;
            }

            void URLQueue::push(URL &addr){
            	assert(&addr!=NULL);
            	if (!contains(addr))
            		queue.Insert(addr);

            }
            URL* URLQueue::pop(){
            	URL *first=new URL(*(queue.Get(0)));
            	queue.Remove(queue.GetFirst());
            	return first;
            }

            bool URLQueue::isEmpty(){
            	return (queue.GetSize()==0);
            }

            int URLQueue::size(){
            	return queue.GetSize();
            }
